package com.funsport.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 积分商品实体类
 */
@Data
@TableName("point_products")
public class PointProduct {
    
    @TableId(type = IdType.AUTO)
    private Long id;
    
    /**
     * 商品名称
     */
    private String name;
    
    /**
     * 商品描述
     */
    private String description;
    
    /**
     * 商品图片
     */
    private String image;
    
    /**
     * 所需积分
     */
    private Integer pointsRequired;
    
    /**
     * 原价（仅展示）
     */
    private BigDecimal originalPrice;
    
    /**
     * 库存数量
     */
    private Integer stock;
    
    /**
     * 累计兑换数
     */
    private Integer totalExchanged;
    
    /**
     * 商品分类
     */
    private String category;
    
    /**
     * 商品类型：physical-实物, virtual-虚拟, coupon-优惠券
     */
    private String type;
    
    /**
     * 商品状态：active-上架, inactive-下架, out_of_stock-缺货
     */
    private String status;
    
    /**
     * 是否热门
     */
    private Boolean isHot;
    
    /**
     * 排序顺序
     */
    private Integer sortOrder;
    
    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createdAt;
    
    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updatedAt;
}

